1. Field of the Invention
The invention relates generally to a digital processing system for nodes that communicate via unidirectional rings, and more particularly to method and apparatus that prevents the same communication packet from being processed twice by a node.
2. Description of the prior Art
IEEE P1596 SCI (scalable coherent interface) Standards Draft specifies protocols for nodes that communicate via unidirectional rings. In normal operation, a node transmits a communication packet destined for some other node in the system. The communication packet is routed to the proper node which generates an echo packet that is transmitted back to the node that originated the communication packet. The receipt of the echo packet indicates that the communication packet was received correctly and need not be retransmitted or retried. SCI supports shared coherent memory across many nodes. Thus, many of the packets are for the purpose of transferring ownership of data items, updating or purging invalid data items. This type of shared coherent memory is very sensitive to errant commands. For example, a command that transfers ownership of data when executed twice can result in a data integrity failure. IEEE P1596 SCI Standards Draft specifies a mechanism that can insure that two copies of a packet do not exist in the system at the same time, but does not specify a mechanism or policy that prevents the same packet from being processed twice by a node or the reprocessing of a retransmitted packet. The lack of such a policy leads to data integrity failures.
A need exists for a method and apparatus that prevents a packet from being processed twice by a node and that is simple to implement.